#!/bin/bash

echo "===== 路线规划应用启动脚本 ====="
echo "此脚本将启动MCP服务、代理服务器和React应用"

# 设置工作目录
cd "$(dirname "$0")"
echo "当前工作目录: $(pwd)"

# 设置高德地图API Key
export AMAP_MAPS_API_KEY=5167e1072a5f26767abb39b6f579c07c
echo "高德地图API Key设置完成"

# 确认环境变量设置成功
echo "验证环境变量: $AMAP_MAPS_API_KEY"

# 安装依赖
if [ ! -d "node_modules" ]; then
  echo "正在安装依赖..."
  npm install
fi

# 启动MCP服务
echo "启动MCP服务..."
npx -y @amap/amap-maps-mcp-server &
MCP_PID=$!
echo "MCP服务已启动，进程ID: $MCP_PID"

# 等待MCP服务初始化
sleep 3
echo "等待MCP服务初始化完成..."

# 启动代理服务器
echo "启动代理服务器..."
node proxy-server.js &
PROXY_PID=$!
echo "代理服务器已启动，进程ID: $PROXY_PID"

# 等待代理服务器初始化
sleep 2
echo "等待代理服务器初始化完成..."

# 启动React应用
echo "启动React应用..."
npm start

# 脚本结束时，终止所有后台进程
function cleanup {
  echo "正在终止所有后台进程..."
  kill $MCP_PID 2>/dev/null
  kill $PROXY_PID 2>/dev/null
  echo "清理完成"
}

# 注册清理函数
trap cleanup EXIT

# 等待用户按下Ctrl+C
echo "所有服务已启动。按Ctrl+C终止所有服务。"
wait 